Function.prototype.myCall=function(ctx, ...args){
  ctx = ctx === null || ctx === undefined ? globalThis : Object(ctx);
  let key = Symbol('temp');
  Object.defineProperty(ctx, key, {
    enumerable: false,
    value:this
  })
  let result = ctx[key](...args)
  delete ctx[key]
  return result
}